Graphical user interface with zoom for detail-in-context presentations

ABSTRACT

A graphical user interface (GUI) is provided for manipulating a presentation of a region of interest within visual information displayed on a display screen of a computer display system. The GUI includes: a first bounding shape surrounding the focal region; a second bounding shape surrounding the shoulder region; a base outline; a pickup point; a slide bar; a move area within the region of interest; at least one zoom area; and, a zoom button.

[0001] This application claims priority from Canadian Patent ApplicationNo. 2,350,342 filed Jun. 12, 2001, and incorporated herein by reference.

[0002] The invention relates to the field of computer graphicsprocessing, and more specifically to a graphical user interface (GUI)with zoom functionality for a detail-in-context presentation system.

BACKGROUND OF THE INVENTION

[0003] Display screens are the primary visual display interface to acomputer. One problem with these visual display screens is that they arelimited in size, thus presenting a challenge to user interface design,particularly when larger amounts of information is to be displayed. Thisproblem is normally referred to as the “screen real estate problem”.

[0004] Well-known solutions to this problem include panning, zooming,scrolling or combinations thereof. While these solutions are suitablefor a large number of visual display applications, these solutionsbecome less effective where The visual information is spatially related,such as maps, newspapers and such like. In this type of informationdisplay, panning, zooming and/or scrolling is not as effective as muchof the context of the panned, zoomed or scrolled display is hidden.

[0005] A recent solution to this problem is the application of“detail-in-context” presentation techniques. Detail-in-context is themagnification of a particular region of interest (the “focal region”) ina data presentation while presenting visibility of the surroundinginformation. This technique has applicability to the display of largesurface area media, such as maps, on limited size computer screens suchas personal digital assistance (PDA's) and cell phones.

[0006] In the detail-in-context discourse, differentiation is often madebetween the terms “representation” and “presentation”. A representationis a formal system, or mapping, for specifying raw information or datathat is stored in a computer or data processing system. For example, adigital map of a city is a representation of raw data including streetnames and the relative geographic location of streets and utilities.Such a representation may be displayed visually on computer screen orprinted on paper. On the other hand, a presentation is a spatialorganization of a given representation that is appropriate for the taskat hand. Thus, a presentation of a representation organizes such thingsas the point of view and the relative emphasis of different parts orregions of the representation. For example, a digital map of a city maybe presented with a region magnified to reveal street names.

[0007] In general, a detail-in-context presentation may be considered asa distorted view (or distortion) of a portion of the originalrepresentation where the distortion is the result of the application ofa “lens” like distortion function to the original representation. Adetailed review of various detail-in-context presentation techniquessuch as Elastic Presentation Space (“EPS”) may be found in a publicationby Marianne S. T. Carpendale, entitled “A Framework for ElasticPresentation Space” (Burnaby, British Columbia: Simon Fraser University,1999), and incorporated herein by reference.

[0008] Development of increasingly powerful computing devices has leadto new possibilities for applications of detail-in-context viewing. Atthe same time, the demand for user control over the parameters of adetail-in-context lens has increased. Indeed, one shortcoming of currentEPS graphics technology and detail-in-context presentation methods isthe lack of an effective user friendly graphical user interface (“GUI”)for the control of lens display parameters. Generally, with a GUI, auser interacts with icons and controls in a GUI display by moving apointing device, such as a mouse, which causes a censor or pointer to bemoved on the display. When the pointer is over the displayed icon orcontrol, the user presses a button such as a mouse button, to invoke oneor more operations to be performed by the computer system.

[0009] A GUI for a detail-in-context presentation system is described inCanadian Patent Application No. 2,345,803 filed by the presentapplicant. However, this GUI does not provide effective zoomfunctionality.

[0010] A need therefore exists for a GUI for a detail-in-contextpresentation system that has effective zoom functionality. Consequently,it is an object of the present invention to obviate or mitigate at leastsome of the above-mentioned disadvantages.

SUMMARY OF THE INVENTION

[0011] In general, the present invention provides a GUI with effectivezoom functionality for a detail-in-context presentation system.

[0012] According to one aspect of the invention, a graphical userinterface is provided for manipulating a presentation of a region ofinterest within visual information displayed on a display screen of acomputer display system, the region of interest having a focal regionand a shoulder region, the region of interest surrounded by an externalregion, the computer display system including the display screen, acomputer, and a pointing device for positioning a cursor on the displayscreen. The GUI includes: a) a first bounding shape surrounding thefocal region, the first bounding shape having at least two active areas,the active areas for resizing and folding the focal region byrepositioning at least one of the active areas with the pointing device;b) a second bounding shape surrounding the shoulder region, the secondbounding shape having at least two active areas, the active areas forresizing the shoulder region by repositioning at least one of the activeareas with the pointing device; c) a base outline, the base outlinepositioned within the second bounding shape, the base outline outliningthe shoulder region; d) a slide bar, the slide bar having at least oneactive area, the active area for magnifying the region of interest byrepositioning the active area with the pointing device; e) a move areawithin the region of interest, the move area having at least one activearea, the move area located within the region of interest, the activearea for moving the region of interest by repositioning the active areawith the pointing device; f) at least one zoom area, the zoom areawithin the visual information, the zoom area having at least one activearea, the active area for selecting at least one predetermined zoomoperation for the zoom area by selecting the active area with thepointing device; and, g) a zoom button, the zoom button having at leastone active area, the active area for activating the zoom area byselecting the active area with the pointing device, thereby enabling thepredetermined zoom operation to be selected.

[0013] According to another aspect of the invention, a graphical userinterface is provided for manipulating a presentation of a region ofinterest within visual information displayed on a display screen of acomputer display system, the region of interest having a focal regionand a shoulder region, the region of interest surrounded by an externalregion, the computer display system including the display screen, acomputer, and a pointing device for positioning a cursor on the displayscreen. The GUI includes: a) a representation of a first boundingrectangle surrounding the focal region, the first bounding rectanglehaving at least two active areas, the active areas for resizing andfolding the focal region by repositioning at least one of the activeareas with the pointing device; b) a representation of a second boundingrectangle surrounding the shoulder region, the second bounding rectanglehaving at least two active areas, the active areas for resizing theshoulder region by repositioning at least one of the active areas withthe pointing device; c) a representation of a base outline, the baseoutline positioned within the second bounding rectangle, the baseoutline outlining the shoulder region; d) a representation of a pickuppoint, the pickup point positioned centrally in the region of interest,the pickup point having at least one active area, the active area formoving the base outline and subsequently the region of interest byrepositioning the active area with the pointing device; e) arepresentation of a slide bar, the slide bar positioned in the externalregion adjacent to the second bounding rectangle, the slide bar havingat least one active area, the active area for magnifying the region ofinterest by repositioning the active area with the pointing device; f) amove area within the region of interest, the move area having at leastone active area, the move area located within the region of interest,the move area excluding the first bounding rectangle, the secondbounding rectangle, and the pickup icon, the active area for moving theregion of interest by repositioning the active area with the pointingdevice; and, g) a representation of at least one zoom selection point,the zoom selection point having at least one active area, the activearea for selecting at least one predetermined zoom operation for atleast one of the focal region, the shoulder region, the region ofinterest, and the external region.

[0014] Advantageously, through a user friendly GUI which incorporateszoom functionality, the invention allows a user to quickly navigate to aregion of interest within a continuous view of a larger presentation andthen zoom in to that region of interest for detailed viewing or editing.

BRIEF DESCRIPTION OF THE DRAWINGS

[0015] Embodiments of the invention may best be understood by referringto the following description and accompanying drawings. In thedescription and drawings, line numerals refer to like structures orprocesses. In the drawings:

[0016]FIG. 1 is a graphical construction illustrating a 3D perspectiveviewing frustum in accordance with known elastic presentation spacegraphics technology;

[0017]FIG. 2 is a cross-sectional view illustrating a presentation inaccordance with known elastic presentation space graphics technology;

[0018]FIG. 3 is a block diagram illustrating an exemplary dataprocessing system for implementing an embodiment of the invention;

[0019]FIG. 4 a partial screen capture illustrating a GUI having lenscontrol elements for user interaction with detail-in-context datapresentations in accordance with an embodiment of the invention; and,

[0020]FIG. 5 is a flow chart illustrating a general method fordisplaying a region of interest within visual information on a displayscreen of a computer display system in accordance with an embodiment ofthe invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0021] In the following description, numerous specific details are setforth to provide a thorough understanding of the invention. However, itis understood that the invention may be practiced without these specificdetails. In other instances, well-known software, circuits, structuresor processes have not been described or shown in detail in order not toobscure the invention. The term “data processing system” is used hereinto refer to any machine for processing data, including the computersystems and network arrangements described herein. The term “ElasticPresentation Space” or “EPS” is used herein to refer to techniques thatallow for the adjustment of a visual presentation without interferingwith the information content of the representation. The adjective“elastic” is included in the term as it implies the capability ofstretching and deformation and subsequent return to an original shape.EPS graphics technology is described by Carpendale in A Framework forElastic Presentation Space (Carpendale, Marianne S. T., A Framework forElastic Presentation Space (Burnaby, British Columbia: Simon FraserUniversity, 1999)) which is incorporated herein by reference. In EPSgraphics technology, a two-dimensional visual representation is placedonto a surface; this surface is placed in three-dimensional space; thesurface, containing the representation, is viewed through perspectiveprojection; and the surface is manipulated to effect the reorganizationof image details. The presentation transformation is separated into twosteps: surface manipulation or distortion and perspective projection. Inthe drawings, like numerals refer to like sutures or processes.

[0022] Referring to FIG. 1, there is shown a graphical representation100 of the geometry for constructing a three-dimensional (3D)perspective viewing frustum 220 relative to an x, y, z coordinate systemin accordance with known elastic presentation space (“EPS”) graphicstechnology. In the EPS, detail-in-context views of 2D visualrepresentations are created with sight-line aligned distortions of atwo-dimensional (2D) information presentation surface within a 3Dperspective viewing frustum 220. In EPS, magnification of regions ofinterest and the accompanying compression of the contextual region toaccommodate this change in scale are produced by the movement of regionsof the surface towards the viewpoint 240 located at the apex of thepyramidal shape 220 containing the frustum. The process of projectingthese transformed layouts via a perspective projection results in a new2D layout which includes the zoomed and compressed regions. The use ofthe third dimension and perspective distortion to provide magnificationin EPS provides a meaningful metaphor for the process of distorting theinformation presentation surface. The 3D manipulation of the informationpresentation surface in such a system is an intermediate step in theprocess of creating a new 2D layout of the information.

[0023] Referring to FIG. 2, there is shown geometrical representation ofa presentation 200 in accordance with known EPS graphics technology. EPSgraphics technology employs viewer-aligned perspective projections toproduce detail-in-context presentations in a reference view plane 201which may be viewed on a display. Undistorted 2D data points are locatedin a basal plane 210 of a 3D perspective viewing volume or frustum 220which is defined by extreme rays 221 and 222 and the basal plane 210. Aviewpoint (“VP”) 240 is located above the centre point of the basalplane 210 and reference view plane 201. Points in the basal plane 210are displaced upward onto a distorted surface 230 which is defined by ageneral 3D distortion function (i.e. a detail-in-context distortionbasis function). The direction of the viewer-aligned perspectiveprojection corresponding to the distorted surface 230 is indicated bythe line FPo-FP 231 drawn from a point FPo 232 in the basal plane 210through the point FP 233 which corresponds to the focus or focal regionor focal point of the distorted surface 230.

[0024] To reiterate, EPS refers to a collection of know-how andtechniques for performing “detail-in-context viewing” (also known as“multi-scale viewing” and “distortion viewing”) of information such asimages, maps, and text, using a projection technique summarized below.EPS is applicable to multidimensional data and is well suited toimplementation on a computer for dynamic detail-in-context display on anelectronic display surface such as a monitor. In the case of twodimensional data, EPS is typically characterized by magnification ofareas of an image where detail is desired, in combination withcompression of a restricted range of areas of the remaining information(the “context”), the end result typically giving the appearance of alens having been applied to the display surface. EPS has numerousadvantages over conventional zoom, pan, and scroll technologies,including the capability of preserving the visibility of informationoutside the local region of interest.

[0025] In general, in EPS, the source image to be viewed is located inthe basal plane. Magnification and compression are achieved throughelevating elements of the source image relative to the basal plane, andthen projecting the resultant distorted surface onto the reference viewplane. EPS performs detail-in-context presentation of n-dimensional datathrough the use of a procedure wherein the data is mapped into a regionin an (n+1) dimensional space, manipulated through perspectiveprojections in the (n+1) dimensional space, and then finally transformedback into n-dimensional space for presentation.

[0026] For example, and referring to FIGS. 1 and 2, in two dimensions,EPS can be implemented through the projection of an image onto areference plane 201 in the following manner. The source image is locatedon a basal plane 210, and those regions of interest 233 of the image forwhich magnification is desired are elevated so as to move them closer toa reference plane situated between the reference viewpoint 240 and thereference view plane (RVP) 201. Magnification of the “focal region” 233closest to the RVP varies inversely with distance from the RVP 201. Asshown in FIGS. 1 and 2, compression of regions outside the focal region233 is a function of both distance from the RVP 201, and the gradient ofthe fiction describing the vertical distance from the RVP 201 withrespect to horizontal distance from the focal region 233. The resultantcombination of magnification and compression of the image as seen fromthe reference viewpoint 240 results in a lens-like effect similar tothat of a magnifying glass applied to the image, and the resultantdistorted image may be referred to as a “pliable display surface”.Hence, the various functions used to vary the magnification andcompression of the image via vertical displacement from the basal plane210 are described as lenses, lens types, or lens functions. Lensfunctions that describe basic lens types with point and circular focalregions, as well as certain more complex lenses and advancedcapabilities such as folding, have previously been described byCarpendale.

[0027] System

[0028] Referring to FIG. 3, there is shown a block diagram of anexemplary data processing system 300 for implementing an embodiment ofthe invention. The data processing system is suitable for implementingEPS technology in conjunction with a graphical user interface (“GUI”).The data processing system 300 includes an input device 310, a centralprocessing unit or CPU 320, memory 330, and a display 340. The inputdevice 310 may be a keyboard, mouse, trackball, or similar device. TheCPU 320 may include dedicated coprocessors and memory devices. Thememory 330 may include RAM, ROM, databases, or disk devices. And, thedisplay 340 may include a computer screen or terminal device. The dataprocessing system 300 has stored therein data representing sequences ofinstructions which when executed cause the method described herein to beperformed. Of course, the data processing system 300 may containadditional software and hardware a description of which is not necessaryfor understanding the invention.

[0029] GUI with Lens Control Elements

[0030] As mentioned, detail-in-context presentations of data usingtechniques such as pliable surfaces, as described by Carpendale, areuseful in presenting large amounts of information on limited-sizedisplay surfaces. Detail-in-context views allow magnification of aparticular region of interest (the “focal region”) 233 in a datapresentation while preserving visibility of the surrounding information210. In the following, a GUI having lens control elements that can beimplemented in software and applied to the control of detail-in-contextdata presentations, including EPS and pliable surfaces, is described.The software can be loaded into and run by the exemplary data processingsystem 300 of FIG. 3.

[0031] Referring to FIG. 4, there is a partial screen captureillustrating a GUI 400 having lens control elements for user interactionwith detail-in-context data presentations in accordance with anembodiment of the invention. Detail-in-context data presentations arecharacterized by magnification of areas of an image where detail isdesired, in combination with compression of a restricted range of areasof the remaining information (i.e. the “context”), the end resulttypically giving the appearance of a “lens” having been applied to thedisplay screen surface. This “lens” 410 includes a “focal region” 420having high magnification, a surrounding “shoulder region” 430 whereinformation is typically visibly compressed, and a “base” 412surrounding the shoulder region 430 and defining the extent of the lens410. In FIG. 4, the lens 410 is shown with a circular shaped base 412(or outline) and with a focal region 420 lying near the center of thelens 410. However, the lens 410 and focal region 420 may have anydesired shape. Referring again to FIG. 2, the lens 410 corresponds tothe projection of the distorted surface 230 and focal region 233 ontothe reference plane 201.

[0032] In general, the GUI 400 has lens control elements that, incombination, provide for the interactive control of the lens 410. Theeffective control of the characteristics of the lens 410 by a user (i.e.dynamic interaction with a detail-in-context lens) is advantageous. Atany given time, one or more of these lens control elements may be madevisible to the user on the display surface 340 by appearing as overlayicons on the lens 410. Interaction with each element is performed viathe motion of a pointing device 310 (e.g. mouse), with the motionresulting in an appropriate change in the corresponding lenscharacteristic. As will be described, selection of which lens controlelement is actively controlled by the motion of the pointing device 310at any given time is determined by the proximity of the iconrepresenting the pointing device 310 on the display surface 340 (e.g.cursor) to the appropriate component of the lens 410. For example,“dragging” of the pointing device at the periphery of the boundingrectangle of the lens base 412 causes a corresponding change in the sizeof the lens 410 (i.e. “resizing”). Thus, the GUI 400 provides the userwith a visual representation of which lens control element is beingadjusted through the display of one or more corresponding icons.

[0033] For ease of understanding, the following discussion will be inthe context of using a two-dimensional pointing device 310 that is amouse, but it will be understood that the invention may be practicedwith other 2-D or 3-D (or even greater numbers of dimensions) pointingdevices including a trackball and keyboard.

[0034] A mouse 310 controls the position of a cursor icon 401 that isdisplayed on the display screen 340. The cursor 401 is moved by movingthe mouse 310 over a flat surface, such as the top of a desk, in thedesired direction of movement of the cursor 401. Thus, thetwo-dimensional movement of the mouse 310 on the flat surface translatesinto a corresponding two-dimensional movement of the cursor 401 on thedisplay screen 340.

[0035] A mouse 310 typically has one or more finger actuated controlbuttons (i.e. mouse buttons). While the mouse buttons can be used fordifferent functions such as selecting a menu option pointed at by thecursor 401, the disclosed invention may use a single mouse button to“select” a lens 410 and to trace the movement of the cursor 401 along adesired path. Specifically, to select a lens 410, the cursor 401 isfirst located within the extent of the lens 410. In other words, thecursor 401 is “pointed” at the lens 410. Next, the mouse button isdepressed and released. That is, the mouse button is “clicked”.Selection is thus a point and click operation. To trace the movement ofthe cursor 401, the cursor 401 is located at the desired startinglocation, the mouse button is depressed to signal the computer 320 toactivate a lens control element, and the mouse 310 is moved whilemaintaining the button depressed. After the desired path has beentraced, the mouse button is released. This procedure is often referredto as “clicking” and “dragging” (i.e. a click and drag operation). Itwill be understood that a predetermined key on a keyboard 310 could alsobe used to activate a mouse click or drag. In the following, the term“clicking” will refer to the depression of a mouse button indicating aselection by the user and the term “dragging” will refer to thesubsequent motion of the mouse 310 and cursor 401 without the release ofthe mouse button.

[0036] The GUI 400 may include the following lens control elements:move, pickup, resize base, resize focus, fold, magnify, and zoom. Eachof these lens control elements generally has at least one lens controlicon or alternate cursor icon associated with it. In general, when alens 410 is selected by a user through a point and click operation, thefollowing lens control icons may be displayed over the lens 410: pickupicon 450, base outline icon 412, base bounding rectangle icon 411, focalregion bounding rectangle icon 421, handle icons 481, 482, 491, magnifyslide bar icon 440. In addition, a zoom icon 495 may be displayed overthe lens 410 or on a toolbar or pull-down menu. Typically, these iconsare displayed simultaneously after selection of the lens 410. Inaddition, when the cursor 401 is located within the extent of a selectedlens 410, an alternate cursor icon 460, 470, 480, 490 may be displayedover the lens 410 to replace the cursor 401 or may be displayed incombination with the cursor 401. In addition, when zoom functionality isselected by the user, for example, through the zoom icon 495, analternate cursor icon 496 may be displayed to replace the cursor 401 ormay be displayed in combination with the cursor 401. These lens controlelements, corresponding icons, and their effects on the characteristicsof a lens 410 are described below with reference to FIG. 4.

[0037] In general, when a lens 410 is selected by a point and clickoperation, bounding rectangle icons 411, 421 are displayed surroundingthe base 412 and focal region 420 of the selected lens 410 to indicatethat the lens 410 has been selected. With respect to the boundingrectangles 411, 421 one might view them as glass windows enclosing thelens base 412 and focal region 420, respectively. The boundingrectangles 411, 421 include handle icons 481, 482, 491 allowing fordirect manipulation of the enclosed base 412 and focal region 420 aswill be explained below. Thus, the bounding rectangles 411, 421 not onlyinform the user that the lens 410 has been selected, but also providethe user with indications as to what manipulation operations might bepossible for the selected lens 410 though use of the displayed handles481, 482, 491. Note that it is well within the scope of the presentinvention to provide a bounding region having a shape other thangenerally rectangular. Such a bounding region could be of any of a greatnumber of shapes including oblong, oval, ovoid, conical, cubic,cylindrical, polyhedral, spherical, etc. Moreover, the cursor 401provides a visual cue indicating the nature of an available lens controlelement. As such, the cursor 401 will generally change in form by simplypointing to or selecting a different lens control icon 450, 412, 411,421, 481, 482, 491, 440, 495. For example, when resizing the base 412 ofa lens 410 using a corner handle 491, the cursor 401 will change form toa resize icon 490 once it is pointed at (i.e. positioned over) thecorner handle 491. The cursor 401 will remain in the form of the resizeicon 490 until the cursor 401 has been moved away from the corner handle491.

[0038] Move

[0039] Lateral movement of a lens 410 is provided by the move lenscontrol element of the GUI. This functionality is accomplished by theuser first selecting the lens 410 through a point and click operation.Then, the user points to a point within the lens 410 that is other thana point lying on a lens control icon 450, 412, 411, 421, 481, 482, 491,440, 495. When the cursor 401 is so located, a move icon 460 isdisplayed over the lens 410 to replace the cursor 401 or may bedisplayed in combination with the cursor 401. The move icon 460 not onlyinforms the user that the lens 410 may be moved, but also provides theuser with indications as to what movement operations are possible forthe selected lens 410. For example, the move icon 460 may includearrowheads indicating up, down, left, and right motion. Next, the lens410 is moved by a click and drag operation in which the user clicks anddrags the lens 410 to the desired position on the screen 340 and thenreleases the mouse button 310. The lens 410 is locked in its newposition until a further pickup and move operation is performed.

[0040] Pickup

[0041] Lateral movement of a lens 410 is also provided by the pickuplens control element of the GUI. This functionality is accomplished bythe user first selecting the lens 410 through a point and clickoperation. As mentioned above, when the lens 410 is selected a pickupicon 450 is displayed over the lens 410 near the centre of the lens 410.

[0042] Typically, the pickup icon 450 will be a crosshairs. In addition,a base outline 412 is displayed over the lens 410 representing the base412 of the lens 410. The crosshairs 450 and lens outline 412 not onlyinform the user that the lens has been selected, but also provides theuser with an indication as to the pickup operation that is possible forthe selected lens 410. Next, the user points at the crosshairs 450 withthe cursor 401. Then, the lens outline 412 is moved by a click and dragoperation in which the user clicks and drags the crosshairs 450 to thedesired position on the screen 340 and then releases the mouse button310. The full lens 410 is then moved to the new position and is lockedthere until a further pickup operation is performed. In contrast to themove operation described above, with the pickup operation, it is theoutline 412 of the lens 410 that the user repositions rather than thefull lens 410.

[0043] Resize Base

[0044] Resizing of the base 412 (or outline) of a lens 410 is providedby the resize base lens control element of the GUI. After the lens 410is selected, a bounding rectangle icon 411 is displayed surrounding thebase 412. The bounding rectangle 411 includes handles 491. These handles491 can be used to stretch the base 412 taller or shorter, wider ornarrower, or proportionally larger or smaller. The corner handles 491will keep the proportions the same while changing the size. The middlehandles (not shown) will make the base 412 taller or shorter, wider ornarrower. Resizing the base 412 by the corner handles 491 will keep thebase 412 in proportion. Resizing the base 412 by the middle handles (notshown) will change the proportions of the base 412. That is, the middlehandles (not shown) change the aspect ratio of the base 412 (i.e. theratio between the height and the width of the bounding rectangle 411 ofthe base 412). When a user points at a handle 491 with the cursor 401 aresize icon 490 may be displayed over the handle 491 to replace thecursor 401 or may be displayed in combination with the cursor 401. Theresize icon 490 not only informs the user that the handle 491 may beselected, but also provides the user with indications as to the resizingoperations that are possible with the selected handle. For example, theresize icon 490 for a corner handle 491 may include arrows indicatingproportional resizing. The resize icon (not shown) for a middle handle(not shown) may include arrows indicating width resizing or heightresizing. After pointing at the desired handle 491, the user would clickand drag the handle 491 until the desired shape and size for the base412 is reached. Once the desired shape and size are reached, the userwould release the mouse button 310. The base 412 of the lens 410 is thenlocked in its new size and shape until a further base resize operationis performed.

[0045] Resize Focus

[0046] Resizing of the focal region 420 of a lens 410 is provided by theresize focus lens control element of the GUI. After the lens 410 isselected, a bounding rectangle icon 421 is displayed surrounding thefocal region 420. The bounding rectangle 421 includes handles 481, 482.These handles 481, 482 can be used to stretch the focal region 420taller or shorter, wider or narrower, or proportionally larger orsmaller. The corner handles 481 will keep the proportions the same whilechanging the size. The middle handles 482 will make the focal region 420taller or shorter, wider or narrower. Resizing the focal region 420 bythe corner handles 481 will keep the focal region 420 in proportion.Resizing the focal region 420 by the middle handles 482 will change theproportions of the focal region 420. That is, the middle handles 482change the aspect ratio of the focal region 420 (i.e. the ratio betweenthe height and the width of the bounding rectangle 421 of the focalregion 420). When a user points at a handle 481, 482 with the cursor 401a resize icon 480 may be displayed over the handle 481, 482 to replacethe cursor 401 or may be displayed in combination with the cursor 401.The resize icon 480 not only informs the user that a handle 481, 482 maybe selected, but also provides the user with indications as to theresizing operations that are possible with the selected handle. Forexample, the resize icon 480 for a corner handle 481 may include arrowsindicating proportional resizing. The resize icon 480 for a middlehandle 482 may include arrows indicating width resizing or heightresizing. After pointing at the desired handle 481, 482, the user wouldclick and drag the handle 481, 482 until the desired shape and size forthe focal region 420 is reached. Once the desired shape and size arereached, the user would release the mouse button 310. The focal region420 is then locked in its new size and shape until a further focusresize operation is performed.

[0047] Fold

[0048] Folding of the focal region 420 of a lens 410 is provided by thefold control element of the GUI. In general, control of the degree anddirection of folding (i.e. skewing of the viewer aligned vector 231 asdescribed by Carpendale) is accomplished by a click and drag operationon a point 471, other than a handle 481, 482, on the bounding rectangle421 surrounding the focal region 420. The direction of folding isdetermined by the direction in which the point 471 is dragged. Thedegree of folding is determined by the magnitude of the translation ofthe cursor 401 during the drag. In general the direction and degree offolding corresponds to the relative displacement of the focus 420 withrespect to the lens base 410. In other words, and referring to FIG. 2,the direction and degree of folding corresponds to the displacement ofthe point FP 233 relative to the point FPo 232, where the vector joiningthe points FPo 232 and FP 233 defines the viewer aligned vector 231.

[0049] In particular, after the lens 410 is selected, a boundingrectangle icon 421 is displayed surrounding the focal region 420. Thebounding rectangle 421 includes handles 481, 482. When a user points ata point 471, other than a handle 481, 482, on the bounding rectangle 421surrounding the focal region 420 with the cursor 401, a fold icon 470may be displayed over the point 471 to replace the cursor 401 or may bedisplayed in combination with the cursor 401. The fold icon 470 not onlyinforms the user that a point 471 on the bounding rectangle 421 may beselected, but also provides the user with indications as to what foldoperations are possible. For example, the fold icon 470 may includearrowheads indicating up, down, left, and right motion. By choosing apoint 471, other than a handle 481, 482, on the bounding rectangle 421 auser may control the degree and direction of folding. To control thedirection of folding, the user would click on the point 471 and drag inthe desired direction of folding. To control the degree of folding, theuser would drag to a greater or lesser degree in the desired directionof folding. Once the desired direction and degree of folding is reached,the user would release the mouse button 310. The lens 410 is then lockedwith the selected fold until a further fold operation is performed.

[0050] Magnify

[0051] Magnification of the lens 410 is provided by the magnify lenscontrol element of the GUI. After the lens 410 is selected, the magnifycontrol is presented to the user as a slide bar icon 440 near oradjacent to the lens 410 and typically to one side of the lens 410.Sliding the bar 441 of the slide bar 440 results in a proportionalchange in the magnification of the lens 410. The slide bar 440 not onlyinforms the user that magnification of the lens 410 may be selected, butalso provides the user with an indication as to what level ofmagnification is possible. The slide bar 440 includes a bar 441 that maybe slid up and down, or left and right, to adjust and indicate the levelof magnification. To control the level of magnification, the user wouldclick on the bar 441 of the slide bar 440 and drag in the direction ofdesired magnification level. Once the desired level of magnification isreached, the user would release the mouse button 310. The lens 410 isthen locked with the selected magnification until a furthermagnification operation is performed.

[0052] Typically, the focal region 420 is an area of the lens 410 havingconstant magnification (i.e. if the focal region is a plane). Againreferring to FIGS. 1 and 2, magnification of the focal region 420, 233varies inversely with the distance from the focal region 420, 233 to thereference view plane (RVP) 201. Magnification of areas lying in theshoulder region 430 of the lens 410 also varies inversely with theirdistance from the RVP 201. Thus, magnification of areas lying in theshoulder region 430 will range from unity at the base 412 to the levelof magnification of the focal region 420.

[0053] Zoom

[0054] Zoom functionality is provided by the zoom lens control elementof the GUI. Referring to FIG. 2, the zoom lens control element, forexample, allows a user to quickly navigate to a region of interest 233within a continuous view of a larger presentation 210 and then zoom into that region of interest 233 for detailed viewing or editing.Referring to FIG. 4, the combined presentation area covered by the focalregion 420 and shoulder region 430 and surrounded by the base 412 may bereferred to as the “extent of the lens”. Similarly, the presentationarea covered by the focal region 420 may be referred to as the “extentof the focal region”. The extent of the lens may be indicated to a userby a base bounding rectangle 411 when the lens 410 is selected. Theextent of the lens may also be indicated by an arbitrarily shaped figurethat bounds or is coincident with the perimeter of the base 412.Similarly, the extent of the focal region may be indicated by a secondbounding rectangle 421 or arbitrarily shaped figure. The zoom lenscontrol element allows a user to: (a) “zoom in” to the extent of thefocal region such that the extent of the focal region fills the displayscreen 340 (i.e. “zoom to focal region extent”); (b) “zoom in” to theextent of the lens such that the extent of the lens fills the displayscreen 340 (i.e. “zoom to lens extent”); or, (c) “zoom in” to the arealying outside of the extent of the focal region such that the areawithout the focal region is magnified to the same level as the extent ofthe focal region (i.e. “zoom to scale”). In addition, the zoom lenscontrol element maintains a record of zoom operations such that the usermay restore pre-zoom operation presentations. This record of zoomoperations may be accessed by or presented to the user through “Undo”and “Redo” icons 497, 498 or a pull-down operation history menu (notshown).

[0055] In particular, after the lens 410 is selected, a boundingrectangle icon 411 is displayed surrounding the base 412 and a boundingrectangle icon 421 is displayed surrounding the focal region 420. Zoomfunctionality is accomplished by the user first selecting the zoom icon495 trough a point and click operation. When a user selects zoomfunctionality, a zoom cursor icon 496 may be displayed to replace thecursor 401 or may be displayed in combination with the cursor 401. Thezoom cursor icon 496 provides the user with indications as to what zoomoperations are possible. For example, the zoom cursor icon 496 mayinclude a magnifying glass. By choosing a point within the extent of thefocal region, within the extent of the lens, or without the extent ofthe lens, the user may control the zoom function. To zoom in to theextent of the focal region such that the extent of the focal regionfills the display screen 340 (i.e. “zoom to focal region extent”), theuser would point and click within the extent of the focal region. Tozoom in to the extent of the lens such that the extent of the lens fillsthe display screen 340 (i.e. “zoom to lens extent”), the user wouldpoint and click within the extent of the lens. Or, to zoom in to thepresentation area without the extent of the focal region, such that thearea without the extent of the focal region is magnified to the samelevel as the extent of the focal region (i.e. “zoom to scale”), the userwould point and click without the extent of the lens. After the pointand click operation is complete, the presentation is locked with theselected zoom until a her zoom operation is performed. The user may undoand redo zoom operations by selecting the Undo and Redo icons 497, 498using point and click operations. The Undo and Redo icons 497, 498 maybe located on a menu bar.

[0056] Alternatively, rather than choosing a point within the extent ofthe focal region, within the extent of the lens, or without the extentof the lens to select the zoom function, a zoom function menu withmultiple items (not shown) or multiple zoom function icons (not shown)may be used for zoom function selection. The zoom function menu may bepresented as a pull-down menu. The zoom function icons may be presentedin a toolbar or adjacent to the lens 410 when the lens is selected.Individual zoom function menu items or zoom function icons may beprovided for each of the “zoom to focal region extent”, “zoom to lensextent”, and “zoom to scale” functions described above. In thisalternative, after the lens 410 is selected, a bounding rectangle icon411 may be displayed surrounding the base 412 and a bounding rectangleicon 421 may be displayed surrounding the focal region 420. Zoomfunctionality is accomplished by the user selecting a zoom function fromthe zoom function menu or via the zoom function icons using a point andclick operation. In this way, a zoom function may be selected withoutconsidering the position of the cursor 401 within the lens 410.

[0057] Icon Hiding

[0058] Advantageously, a user may choose to hide one or more lenscontrol icons 450, 412, 411, 421, 481, 482, 491, 440, 495 shown in FIG.4 from view so as not to impede the user's view of the data (i.e. visualinformation) within the lens 410. This may be helpful, for example,during a move operation. A user may select this option through meanssuch as a menu or lens property dialog box.

[0059] Method

[0060] Referring to FIG. 5, there is shown a flow chart 500 illustratinga general method for displaying a region of interest 410 within visualinformation on a display screen 340 of a computer display system 300,the region of interest 410 having a focal region 420 and a shoulderregion 430, the region of interest 410 surrounded by an external region,the computer display system 300 including the display screen 340, acomputer 320, and a pointing device 310 for positioning a cursor 401 onthe display screen 340, in accordance with an embodiment of theinvention. At step 501, the method starts. At step 502, means areprovided for selecting at least one parameter for transforming at leastone of the region of interest 410, the focal region 420, and theexternal region (not shown). At step 503, the parameter is selectedusing the selecting means. At step 504, the visual information istransformed in accordance with a predetermined distortion function andthe parameter to produce transformed visual information. At step 505,the transformed visual information is displayed on the display screen340. At step 506, the method ends.

[0061] The selected parameter may include a magnification for the regionof interest 410, a magnification for the focal region 420, amagnification for the shoulder region 430, and a magnification for theexternal region (not shown). The means for selecting may include a zoombutton 495 and a zoom area. The zoom area may include a first zoom areapositioned over the focal region 420, a second zoom area positioned overthe shoulder region 430, and a third zoom area positioned over theexternal region (not shown). The predetermined distortion function forthe first zoom area may magnify the focal region 420 to fill the displayscreen 340. The predetermined distortion function for the second zoomarea may magnify the region of interest 410 to fill the display screen340. And, the predetermined distortion function for the third zoom areamay magnify the shoulder region 430 and the external region (not shown)to match the existing level of magnification of the focal region 420.

[0062] Alternatively, the means for selecting may include at least onezoom function icon or at least one zoom function menu item. The zoomfunction icons may be located on a tool bar or they may be positioned inthe external region. The zoom function menu items may be located on apull-down menu. The predetermined distortion functions may be associatedwith respective zoom function icons or zoom function menu items. A firstpredetermined distortion function may magnify the focal region 420 tofill the display screen 340. A second predetermined distortion functionmay magnify the region of interest 410 to fill the display screen 340.And, a third predetermined distortion function may magnify the shoulderregion 430 and the external region (not shown) to match the existinglevel of magnification of the focal region 420.

[0063] Data Carrier Product

[0064] The sequences of instructions which when executed cause themethod described herein to be performed by the exemplary data processingsystem of FIG. 3 can be contained in a data carrier product according toone embodiment of the invention. This data carrier product can be loadedinto and run by the exemplary data processing system of FIG. 3.

[0065] Computer Software Product

[0066] The sequences of instructions which when executed cause themethod described herein to be performed by the exemplary data processingsystem of FIG. 3 can be contained in a computer software productaccording to one embodiment of the invention. This computer softwareproduct can be loaded into and run by the exemplary data processingsystem of FIG. 3.

[0067] Integrated Circuit Product

[0068] The sequences of instructions which when executed cause themethod described herein to be performed by the exemplary data processingsystem of FIG. 3 can be contained in an integrated circuit productincluding a coprocessor or memory according to one embodiment of theinvention. This integrated circuit product can be installed in theexemplary data processing system of FIG. 3.

[0069] Although preferred embodiments of the invention have beedescribed herein, it will be understood by those skilled in the at thatvariations may be made thereto without departing from the spirit of theinvention or the scope of the appended claims.

The embodiments of the invention in which an exclusive property orprivilege is claimed are defined as follows:
 1. A graphical userinterface (“GUI”) for manipulating a presentation of a region ofinterest within visual information displayed on a display screen of acomputer display system, said region of interest having a focal regionand a shoulder region, said region of interest surrounded by an externalregion, said computer display system including said display screen, acomputer, and a pointing device for positioning a cursor on said displayscreen, said GUT comprising: a) a first bounding shape surrounding saidfocal region, said first bounding shape having at least two activeareas, said active areas for resizing and folding said focal region byrepositioning at least one of said active areas with said pointingdevice; b) a second bounding shape surrounding said shoulder region,said second bounding shape having at least two active areas, said activeareas for resizing said shoulder region by repositioning at least one ofsaid active areas with said pointing device; c) a base outline, saidbase outline positioned within said second bounding shape, said baseoutline outlining said shoulder region; d) a slide bar, said slide barhaving at least one active area, said active area for magnifying saidregion of interest by repositioning said active area with said pointingdevice; e) a move area within said region of interest, said move areahaving at least one active area, said move area located within saidregion of interest, said active area for moving said region of interestby repositioning said active area with said pointing device; f) at leastone zoom area, said zoom area within said visual information, said zoomarea having at least one active area, said active area for selecting atleast one predetermined zoom operation for said zoom area by selectingsaid active area with said pointing device; and, g) a zoom button, saidzoom button having at least one active area, said active area foractivating said zoom area by selecting said active area with saidpointing device, thereby enabling said predetermined zoom operation tobe selected.
 2. The GUI of claim 1 wherein said first and secondbounding shapes are rectangles.
 3. The GUI of claim 2 wherein one ofsaid active areas is a corner-handle icon positioned over a corner ofsaid first bounding shape.
 4. The GUI of claim 3 wherein one of saidactive areas is a middle-handle icon positioned over said first boundingshape between corners of said first bounding shape.
 5. The GUI of claim4 wherein one of said active areas is a corner-handle icon positionedover a corner of said second bounding shape.
 6. The GUI of claim 5wherein one of said active areas is a middle-handle icon positioned oversaid second bounding shape between corners of said second boundingshape.
 7. The GUI of claim 6 wherein one of said active areas is a foldarea positioned over said first bounding shape between saidcorner-handle and said middle-handle icons.
 8. The GUI of claim 1wherein said move area has at least one pickup point, said pickup pointhaving at least one active area, said active area for moving said baseoutline and subsequently said region of interest by repositioning saidactive area with said pointing device.
 9. The GUI of claim 8 whereinsaid pickup point is located centrally in said region of interest. 10.The GUI of claim 9 wherein said move area excludes said first boundingshape, said second bounding shape, and said pickup point.
 11. The GUI ofclaim 10 wherein one of said active areas is a pickup icon positionedover said pickup point.
 12. The GUI of claim 1 wherein one of saidactive areas is a bar icon positioned over said slide bar.
 13. The GUIof claim 1 wherein one of said active areas is a zoom button iconpositioned over said zoom button.
 14. The GUI of claim 13 wherein saidzoom button icon is located on a tool bar.
 15. The GUI of claim 1wherein said cursor changes shape when positioned over one of saidactive areas.
 16. The GUI of claim 15 wherein said cursor changes saidshape to a resize icon when positioned over said corner-handle icon orsaid middle-handle icon.
 17. The GUI of claim 15 wherein said cursorchanges said shape to a fold icon when positioned over said fold area.18. The GUI of claim 15 wherein said cursor changes said shape to a moveicon when positioned over said move area.
 19. The GUI of claim 15wherein said cursor changes said shape to a zoom icon when positionedover said zoom area.
 20. The GUI of claim 1 wherein said zoom areaincludes a first zoom area positioned over said focal region, a secondzoom area positioned over said shoulder region, and a third zoom areapositioned over said external region.
 21. The GUI of claim 20 whereinsaid predetermined zoom operation for said first zoom area magnifiessaid focal region to fill said display screen.
 22. The GUI of claim 20wherein said predetermined zoom operation for said second zoom areamagnifies said region of interest to fill said display screen.
 23. TheGUI of claim 20 wherein said predetermined zoom operation for said thirdzoom area magnifies said shoulder region and said external region tomatch the existing level of magnification of said focal region.
 24. TheGUI of claim 1 wherein said pointing device is a mouse.
 25. The GUI ofclaim 1 for use in a personal digital assistant (PDA).
 26. The GUI ofclaim 1 for use in a map display system.
 27. A method for displaying aregion of interest within visual information on a display screen of acomputer display system, said region of interest having a focal regionand a shoulder region, said region of interest surrounded by an externalregion, said computer display system including said display screen, acomputer, and a pointing device for positioning a cursor on said displayscreen, said method comprising the steps of: providing means forselecting at least one parameter for transforming at least one of saidregion of interest, said focal region, and said external region; usingsaid means for selecting to select said parameter; transforming saidvisual information in accordance with a predetermined distortionfunction and said parameter to produce transformed visual information;and, displaying said transformed visual information on said displayscreen.
 28. The method of claim 27 wherein said parameter includes amagnification for said region of interest, a magnification for saidfocal region, a magnification for said shoulder region, and amagnification for said external region.
 29. The method of claim 27wherein said means for selecting includes a zoom button and a zoom area.30. The method of claim 29 wherein said zoom area includes a first zoomarea positioned over said focal region, a second zoom area positionedover said shoulder region, and a third zoom area positioned over saidexternal region.
 31. The method of claim 30 wherein said predetermineddistortion function for said first zoom area magnifies said focal regionto fill said display screen.
 32. The method of claim 30 wherein saidpredetermined distortion function for said second zoom area magnifiessaid region of interest to fill said display screen.
 33. The method ofclaim 30 wherein said predetermined distortion function for said thirdzoom area magnifies said shoulder region and said external region tomatch the existing level of magnification of said focal region.
 34. Agraphical user interface (“GUI”) for manipulating a presentation of aregion of interest within visual information displayed on a displayscreen of a computer display system, said region of interest having afocal region and a shoulder region, said region of interest surroundedby an external region, said computer display system including saiddisplay screen, a computer, and a pointing device for positioning acursor on said display screen, said GUI comprising: a) a representationof a first bounding rectangle surrounding said focal region, said firstbounding rectangle having at least two active areas, said active areasfor resizing and folding said focal region by repositioning at least oneof said active areas with said pointing device; b) a representation of asecond bounding rectangle surrounding said shoulder region, said secondbounding rectangle having at least two active areas, said active areasfor resizing said shoulder region by repositioning at least one of saidactive areas with said pointing device; c) a representation of a baseoutline, said base outline positioned within said second boundingrectangle, said base outline outlining said shoulder region; d) arepresentation of a pickup point, said pickup point positioned centrallyin said region of interest, said pickup point having at least one activearea, said active area for moving said base outline and subsequentlysaid region of interest by repositioning said active area with saidpointing device; e) a representation of a slide bar, said slide barpositioned in said external region adjacent to said second boundingrectangle, said slide bar having at least one active area, said activearea for magnifying said region of interest by repositioning said activearea with said pointing device; f) a move area within said region ofinterest, said move area having at least one active area, said move arealocated within said region of interest, said move area excluding saidfirst bounding rectangle, said second bounding rectangle, and saidpickup icon, said active area for moving said region of interest byrepositioning said active area with said pointing device; and, g) arepresentation of at least one zoom selection point, said zoom selectionpoint having at least one active area, said active area for selecting atleast one predetermined zoom operation for at least one of said focalregion, said shoulder region, said region of interest, and said externalregion.
 35. The GUI of claim 34 wherein one of said active areas is acorner-handle icon positioned over a corner of said first boundingrectangle.
 36. The GUI of claim 34 wherein one of said active areas is amiddle-handle icon positioned over said first bounding rectangle betweencorners of said first bounding rectangle.
 37. The GUI of claim 34wherein one of said active areas is a corner-handle icon positioned overa corner of said second bounding rectangle.
 38. The GUI of claim 34wherein one of said active areas is a middle-handle icon positioned oversaid second bounding rectangle between corners of said second boundingrectangle.
 39. The GUI of claim 34 wherein one of said active areas is afold area positioned over said first bounding rectangle between saidcorner-handle and said middle-handle icons.
 40. The GUI of claim 34wherein one of said active areas is a pickup icon positioned over saidpickup point.
 41. The GUI of claim 34 wherein one of said active areasis a bar icon positioned over said slide bar.
 42. The GUI of claim 34wherein one of said active areas is a zoom button icon positioned oversaid zoom selection point.
 43. The GUI of claim 42 wherein said zoombutton icon is located on a tool bar.
 44. The GUI of claim 42 whereinsaid zoom button icon is positioned in said external region adjacent tosaid second bounding rectangle.
 45. The GUI of claim 34 wherein one ofsaid active areas is a zoom menu item positioned over said zoomselection point.
 46. The GUI of claim 45 wherein said zoom menu item islocated on a pull-down menu.
 47. The GUI of claim 34 wherein said cursorchanges shape when positioned over one of said active areas.
 48. The GUIof claim 47 wherein said cursor changes said shape to a resize icon whenpositioned over said corner-handle icon or said middle-handle icon. 49.The GUI of claim 47 wherein said cursor changes said shape to a foldicon when positioned over said fold area.
 50. The GUI of claim 47wherein said cursor changes said shape to a move icon when positionedover said move area.
 51. The GUI of claim 34 wherein said predeterminedzoom operation magnifies said focal region to fill said display screen.52. The GUI of claim 34 wherein said predetermined zoom operationmagnifies said region of interest to fill said display screen.
 53. TheGUI of claim 34 wherein said predetermined zoom operation magnifies saidshoulder region and said external region to match the existing level ofmagnification of said focal region.
 54. The GUI of claim 34 wherein saidpointing device is a mouse.
 55. The GUI of claim 34 for use in apersonal digital assistant (PDA).
 56. The GUI of claim 34 for use in amap display system.
 57. A method for displaying a region of interestwithin visual information on a display screen of a computer displaysystem, said region of interest having a focal region and a shoulderregion, said region of interest surrounded by an external region, saidcomputer display system including said display screen, a computer, and apointing device for positioning a cursor on said display screen, saidmethod comprising the steps of: providing means for selecting at leastone parameter for transforming at least one of said region of interest,said focal region, and said external region; using said means forselecting to select said parameter; transforming said visual informationin accordance with a predetermined distortion function and saidparameter to produce transformed visual information; and, displayingsaid transformed visual information on said display screen.
 58. Themethod of claim 57 wherein said parameter includes a magnification forsaid region of interest, a magnification for said focal region, amagnification for said shoulder region, and a magnification for saidexternal region.
 59. The method of claim 57 wherein said means forselecting is at least one zoom button icon.
 60. The method of claim 59wherein said zoom button icon is located on a tool bar.
 61. The methodof claim 59 wherein said zoom button icon is positioned in said externalregion.
 62. The method of claim 57 wherein said means for selecting isat least one zoom menu item.
 63. The method of claim 62 wherein saidzoom menu item is located on a pull-down menu.
 64. The method of claim57 wherein said predetermined distortion function magnifies said focalregion to fill said display screen.
 65. The method of claim 57 whereinsaid predetermined distortion function magnifies said region of interestto fill said display screen.
 66. The method of claim 57 wherein saidpredetermined distortion function magnifies said shoulder region andsaid external region to match the existing level of magnification ofsaid focal region.